﻿
namespace InterrogazioneWebServicesBPM
{
    public class WsSecurityConstants
    {
         public static string WSS_SECURITY_SECEXT_1_0 = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd";
         public static string USERNAME_TOKEN_TAG = "UsernameToken";
         public static string ACTOR_ATTRIBUTE = "http://schemas.xmlsoap.org/soap/actor/next";
         public static string USERNAME_TAG  = "Username";
         public static string PASSWORD_TAG = "Password";
         public static string TYPE_ATTRIBUTE = "Type";
         public static string SECURITY_TAG = "Security";
         public static string PASSWORD_TEXT_BASE_PROFILE_XSD_1_0= "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText";
       //NAMESPACES
	    public static  string URL_WSSE_XSD ="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd";
	    public static  string URL_WSU_XSD ="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd";
	    public static  string URL_DS = "http://www.w3.org/2000/09/xmldsig#";
	    public static  string URL_XENC = "http://www.w3.org/2001/04/xmlenc#";

	    //ATTRIBUTES
	    public static  string PASSWORD_TYPE_TEXT ="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText";
	    public static  string PASSWORD_TYPE_DIGEST ="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest";
	    public static  string ACTOR_SECURITY ="http://schemas.xmlsoap.org/soap/actor/next";
	    public static  string DEFAULT_ENCODING_TYPE = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary";
	    public static  string X509_TOKEN_PROFILE = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3";
	    public static  string ID_PASSWORD = "MyPassword";
	    public static  string ID_BODY = "MyBody";

	    //ALGORITHMS
	    public static  string ALGO_RSA15 = "http://www.w3.org/2001/04/xmlenc#rsa-1_5";
	    public static  string ALGO_SHA1 = "http://www.w3.org/2000/09/xmldsig#sha1";
	    public static  string ALGO_RSA_SHA1 = "http://www.w3.org/2000/09/xmldsig#rsa-sha1";
	    public static  string ALGO_C14N = "http://www.w3.org/2001/10/xml-exc-c14n#";
	    public static  string ALGO_KW_AES128 = "http://www.w3.org/2001/04/xmlenc#kw-aes128";
	    public static  string ALGO_TRANSFORM_BASE64 = "http://www.w3.org/2000/09/xmldsig#base64";

	    //PREFIXES
	    public static  string PREFIX_WSSE = "wsse";
	    public static  string PREFIX_DS = "ds";
	    public static  string PREFIX_XENC = "xenc";
	    public static  string PREFIX_WSU = "wsu";

	    //ELEMENTS NAME
	    //Security elements(wsse)
	    public static  string SECURITY ="Security";
	    public static  string USERNAMEN_TOKEN = "UsernameToken";
	    public static  string BINARY_SECURITY_TOKEN = "BinarySecurityToken";
	    public static  string SECURITY_TOKEN_REFERENCE = "SecurityTokenReference";
	    //EncryptedKey elements(xenc)
	    public static  string ENCRYPTED_DATA = "EncryptedData";
	    public static  string ENCRYPTED_METHOD = "EncryptionMethod";
	    public static  string ENCRYPTED_KEY = "EncryptedKey";
	    public static  string CIPHER_DATA = "CipherData";
	    public static  string CIPHER_VALUE = "CipherValue";
	    public static  string REFERENCE_LIST = "ReferenceList";
	    public static  string DATA_REFERENCE = "DataReference";
	    //Signature elements(ds)
	    public static  string SIGNATURE = "Signature";
	    public static  string SIGNED_INFO = "SignedInfo";
	    public static  string CANONICALIZATION_METHOD = "CanonicalizationMethod";
	    public static  string SIGNATURE_METHOD = "SignatureMethod";
	    public static  string REFERENCE = "Reference";
	    public static  string TRANSFORMS = "Transforms";
	    public static  string TRANSFORM = "Transform";
	    public static  string DIGEST_METHOD = "DigestMethod";
	    public static  string DIGEST_VALUE = "DigestValue";
	    public static  string SIGNATURE_VALUE = "SignatureValue";
	    public static  string KEY_INFO = "KeyInfo";
	    public static  string X509_DATA = "X509Data";
	    public static  string X509_SUBJECT_NAME = "X509SubjectName";
	    public static  string X509_ISSUER_SERIAL = "X509IssuerSerial";
	    public static  string X509_ISSUER_NAME = "X509IssuerName";
	    public static  string X509_SERIAL_NUMBER = "X509SerialNumber";

	    //ATTRIBUTE_TYPE
	    public static  string ID = "Id";
	    public static  string TYPE = "Type";
	    public static  string ENCODING = "Encoding";
	    public static  string ALGORITHM = "Algorithm";
	    public static  string URI = "URI";
	    public static  string VALUE_TYPE = "ValueType";
	    public static  string ENCODING_TYPE = "EncodingType";

	    //INPUT PARAMETERS
	    public static  string AT_BPM ="@BPM";
	    public static  string AT_BDL ="@BDL";
	    public static  string AT_CRA ="@CRA";
	    public static  string IVR_APPL_CREDENTIAL =".IVRCALL";
	    public static  string CGL_APPL_CREDENTIAL =".CGLOBAL";
	    public static  string BINARY_TOKEN_ID_VALUE ="#binarytoken";
	    public static  string BODY_ID_VALUE ="#body";
	    public static  string REQUEST_USERNAME = "Username";
	    public static  string REQUEST_PASSWORD = "Password";
	    public static  string KEYSTORE_NAME = "KEYSTORE_NAME";
	    public static  string KEYSTORE_ALIAS = "KEYSTORE_ALIAS";
	    public static  string KEYSTORE_PASS = "KEYSTORE_PASS";
	    public static  string KEYSTORE_KEY_PASS = "KEYSTORE_KEY_PASS";
    }
}
